﻿using Avalonia.Controls.Primitives;

namespace KinonekoSoftware.Studio.Resources.Controls
{
    public class RelationshipCard : TemplatedControl
    {
        public static readonly StyledProperty<string> TopNameProperty     = AvaloniaProperty.Register<RelationshipCard, string>(nameof(TopName));
        public static readonly StyledProperty<string> BottomNameProperty  = AvaloniaProperty.Register<RelationshipCard, string>(nameof(BottomName));
        public static readonly StyledProperty<Bitmap> SourceImageProperty = AvaloniaProperty.Register<RelationshipCard, Bitmap>(nameof(SourceImage));
        public static readonly StyledProperty<Bitmap> TargetImageProperty = AvaloniaProperty.Register<RelationshipCard, Bitmap>(nameof(TargetImage));
        public static readonly StyledProperty<string> SourceNameProperty  = AvaloniaProperty.Register<RelationshipCard, string>(nameof(SourceName));
        public static readonly StyledProperty<string> TargetNameProperty  = AvaloniaProperty.Register<RelationshipCard, string>(nameof(TargetName));

        public string TargetName
        {
            get => GetValue(TargetNameProperty);
            set => SetValue(TargetNameProperty, value);
        }

        public string SourceName
        {
            get => GetValue(SourceNameProperty);
            set => SetValue(SourceNameProperty, value);
        }
        public Bitmap TargetImage
        {
            get => GetValue(TargetImageProperty);
            set => SetValue(TargetImageProperty, value);
        }
        public Bitmap SourceImage
        {
            get => GetValue(SourceImageProperty);
            set => SetValue(SourceImageProperty, value);
        }
        public string BottomName
        {
            get => GetValue(BottomNameProperty);
            set => SetValue(BottomNameProperty, value);
        }
        public string TopName
        {
            get => GetValue(TopNameProperty);
            set => SetValue(TopNameProperty, value);
        }
    }
}